package model

import "fmt"

// Animal 定义结构体动物
type Animal struct {
	Age    int
	Weight float32
}

// Shout 给animal绑定方法 喊叫
func (a *Animal) Shout() {
	fmt.Println("我可以大声喊叫")
}

// ShowInfo 给animal绑定方法 自我展示
func (a *Animal) ShowInfo() {
	fmt.Printf("动物的年龄是：%v,体重是%v", a.Age, a.Weight)
}

// Cat ----------------------------------
// Cat 定义结构体Cat
type Cat struct {
	// 为了复用性，体现继承思维，加入匿名结构体
	Animal
}

// Scratch 对Cat绑定特有的方法
func (c *Cat) Scratch() {
	fmt.Println("我是小猫咪，我会挠人")
}

//为了体现继承性
